package cn.kgm.genericity;

/**
 * Create by kappi on
 * 2021/12/23/023 16:17
 */
public class GenericityClass<T> {

    private T init;

    public static void main(String[] args) {
        GenericityClass gen = new GenericityClass<>();
        gen.setInit("www.baidu");
        gen.setInit(22);
        gen.setInit(222);
        System.out.println(gen.getInit());
    }

    public GenericityClass(){
    }

    public GenericityClass(T t){
        this.init = t;
    }

    public class A<E>{
        // 类里面的方法或类中再次声明同名泛型是允许的，并且该泛型会覆盖掉父类的同名泛型T
        T t;
    }

    public class B<T>{
        // 类里面的方法或类中再次声明同名泛型是允许的，并且该泛型会覆盖掉父类的同名泛型T
        T t;
    }

   static class C<T>{
        // 类里面的方法或类中再次声明同名泛型是允许的，并且该泛型会覆盖掉父类的同名泛型T
        T t;
    }

    public T getInit() {
        return this.init;
    }

    public void setInit(T t) {
        this.init = t;
    }
}
